package org.example.factory.service;

import dev.langchain4j.model.openai.OpenAiChatModel;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

/**
 * OpenAI大语言模型服务实现类
 * 该类实现了LLMService接口，提供基于OpenAI模型的聊天功能
 */
@Component
public class OpenAiLLMService implements LLMService {

    private final OpenAiChatModel openAiChatModel;

    /**
     * 构造函数，通过Spring依赖注入初始化OpenAiChatModel实例
     * 使用Spring自动配置的OpenAiChatModel Bean
     */
    @Autowired
    public OpenAiLLMService(OpenAiChatModel openAiChatModel) {
        this.openAiChatModel = openAiChatModel;
    }

    /**
     * 与OpenAI模型进行聊天交互
     * @param prompt 用户输入的提示词
     * @return 模型返回的聊天响应内容
     */
    @Override
    public String chat(String prompt) {
       return  openAiChatModel.chat(prompt);
    }
}

